package com.yxw.live_vod_boot.service;

import com.yxw.live_vod_boot.dto.collection_video.OnDemandCollectionVideoAddDTO;
import com.yxw.live_vod_boot.dto.collection_video.OnDemandCollectionVideoDeleteDTO;
import com.yxw.live_vod_boot.dto.collection_video.OnDemandCollectionVideoQueryDTO;
import com.yxw.live_vod_boot.dto.collection_video.OnDemandCollectionVideoSingleQueryDTO;
import com.yxw.live_vod_boot.vo.CollectionStateVO;
import com.yxw.live_vod_boot.vo.OnDemandCollectionVideoVO;
import com.yxw.yxnet_cd_center.common.dto.PageVO;

/**
 * @author fangmaoxin
 * &#064;date  2023年11月16日
 */
public interface OnDemandCollectionVideoService {
    /**
     * 用户新增一个收藏视频
     */
    int insertCollectionVideoByUserId(Long userId, OnDemandCollectionVideoAddDTO dto);

    /**
     * 用户删除一个收藏视频
     */
    int deleteCollectionVideoByUserId(Long userId, OnDemandCollectionVideoDeleteDTO dto);

    /**
     * 用户查询自己的收藏视频列表
     */
    PageVO<OnDemandCollectionVideoVO> getCollectionVideoByUserId(Long userId, OnDemandCollectionVideoQueryDTO dto);

    /**
     * 用户查询自己有没有收藏某个视频
     */
    CollectionStateVO checkCollectionStateForUser(Long userId, OnDemandCollectionVideoSingleQueryDTO dto);

}